1. Field Of The Invention
This invention relates to input devices for computers, and more particularly to input devices, such as joysticks, track balls and mouses, which convert motion and/or position into signals which may be accepted by a computer.
2. Description Of The Prior Art
With the recent popularity of personal computers and video games, the sophistication of the public with respect to computer input devices has increased. The public has realized that certain input devices may be more suitable in certain applications than other input devices. An example of an input device which is being widely employed is the joystick as described in the following U.S. Pat. Nos.: 4,491,325; 4,490,710; 4,489,303; 4,459,578; 4,439,649; 4,357,014; 4,313,227; 4,306,232; 4,190,834; 4,161,726; 4,148,014; 3,739,316; 3,541,521; 3,331,972; 3,308,675 and 2,842,645.
The usefulness of joysticks and other input devices, however, depends entirely upon the program written to accept data from such input devices. A perfect example are flight simulator programs such as marketed by Microsoft for the IBM personal computer and SubLogic for the Atari and Commodore personal computers. The primary manner of inputting data for both of these programs is through a keyboard. For example, three keys are employed to control the rate of roll in the flight simulation. Depression of one key causes the rate of roll variable to be incremented in one direction. Depression of another key causes the rate of roll variable to be incremented in the opposite direction. Finally, a third key is depressed to cause the rate of roll to return instantly to zero so that the roll itself will continue as set just prior to depression of the zeroing key. As explained by Miastkowski, "Microsoft Flight Simulator" BYTE, Volume 9, No. 3, March, 1984, pp. 224-232, such keyboard control is a major drawback to accurately simulating the flying of an airplane.
Nevertheless, such keyboard control is superior to previous attempts to employ a conventional joystick with these flight simulator programs. The flight simulator program by SubLogic does permit rate of roll to be controlled by a joystick. The joystick input port consists of two lines. When only one line assumes a low level, the rate of roll variable repeatedly increments in one direction. When only the other line assumes a low level, the rate of roll variable repeatedly increments in the opposite direction. When both lines assume a low level, the variable remains fixed. When neither line assumes a low level, the variable goes to zero. When the joystick is pushed in one direction, one of the lines assumes a low level, causing the roll variable to be incremented in one direction. When the joystick is pushed in the other direction, the other line assumes a low level, causing the roll variable to be incremented in the opposite direction. When the joystick remains centered, neither line assumes a low level so that the roll variable returns to zero.
Thus, to perform a roll with a joystick with the SubLogic flight simulator program, it is necessary to push the stick in the direction one desires to roll. Then it is necessary to watch the rate of roll indicator until the rate of roll reaches a desired value. Then the joystick is released so that it returns to its centered position to retain that roll. To come out of the roll, it is necessary to push the joystick in the opposite direction and then watch the roll indicator until it is zeroed. Then the joystick is released. This differs from the use of a joystick to control an actual airplane. In an airplane, the degree to which the control stick is pushed from its centered position controls the rate of roll. This will be referred to in this application as proportional control. The joystick control described above with respect to the flight simulator program by SubLogic does not employ proportional control. As long as the joystick is pushed from its centered position, the rate of roll will increment in one direction or the other, independent of joystick position, and will continue to increment until the joystick is returned to its centered position. This is a very unnatural type of control.
With the flight simulator program by Microsoft for the IBM personal computer, it is possible to employ a joystick. However, it is necessary to buy a joystick control card for the computer which is rather expensive.
The use of joysticks to control vehicles is known. U.S. Pat. No. 4,390,877 teaches the use of a joystick to control toy vehicles. In fact, U.S. Pat. No. 3,331,971 teaches a joystick which may be employed to steer airplanes. Finally, U.S. Pat. No. 4,207,687 teaches an extremely complex flight simulator which is obviously extremely expensive. Such a complex simulator is simply beyond the financial capabilities of the general public. Therefore, the '687 patent differs significantly from the joystick patents listed above and from the intent of the present invention.
Typically, the manner in which data from input devices have been employed by a computer program is controlled by that computer program. As a result, the functions of joysticks and other such devices have been fixed.